요약

  • CREATE 기능: 새로운 대상을 생성하는데 사용됨
  • 생성 대상 지정(데이터베이스, 스키마, 테이블, index , 함수 및 프로시저 등)
    • database, schema, table, index, function, procedure

1. 테이블

1.1 신규 테이블 생성

테이블 생성 시, 컬럼명과 데이터 타입, PK 등 지정 가능 컬럼 생성 시, 데이터타입 주의(참고: (DataBase) 데이터 타입)

create table 스키마명.테이블명(
	column1 varchar(20) not null,
	column2 numeric(10, 4),
	column3 text,
	column4 integer
	primary key (column1, column2),
	foreign key (column3) reference 스키마명.참고테이블명
)

1.2 SELECT 문을 활용하여 테이블 생성

FROM 문에서 가져온 테이블 내 컬럼의 속성을 그대로 생성 CREATE TABLE AS 활용

create table 스키마명.테이블명 as
select column1, column2
from schema.table;

2. Index

2.1 Index 생성

  • idx_name은 생략 가능(자동으로 지어줌)
create index on table_name (column1, column2)
create index idx_name on table_name (column1, column2)

2.2 Index와 Primary Key 차이점

구분IndexPK
목적데이터 조회 기능 성능 향상을 위해 특정 열 또는 열 조합에 index 생성테이블 각 행을 고유하게 식별하기 위해 PK 설정
기능테이블의 특정 열에 대한 검색, 정렬, 조인 연산을 빠르게 수행할 수 있도록 도와줌PK 열 또는 열 조합은 테이블 내 고유하며, NULL 값 가질 수 없음
용도쿼리 기능 향상(API에서 테이블 조회 시 활용)데이터 무결성 보장, RDBS애서 테이블 간 관계 설정에 활용
무결성 차이점중복 허용 및 Null 값 포함 가능(단, Unique Index 설정도 가능)자동으로 Unique와 Not Null 제약 포함
인덱스 차이점수동으로 인덱스 지정 필요고유 Index 생성하여 빠른 조회가 가능함

3. 데이터베이스 생성

create database db_name

4. 스키마 생성

  • database는 지정된 상태
create schema schema_name

참고사이트